package com.ciaojian.core.model.dy;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.baomidou.mybatisplus.extension.activerecord.Model;
import lombok.Data;

import java.math.BigDecimal;
import java.util.Date;
import java.io.Serializable;

/**
 * <p>
 * 订单
 * </p>
 *
 * @author 
 * @since 2022-12-28
 */
@Data
@TableName("d_dy_order")
public class DyOrder extends Model<DyOrder> {

    private static final long serialVersionUID = 1L;

    @TableId(value = "id", type = IdType.AUTO)
    private Integer id;

    /**
     * 发型师id
     */
    @TableField("worker_id")
    private Integer workerId;

    /**
     * 抖音用户id
     */
    @TableField("user_id")
    private Integer userId;

    /**
     * 抖音用户id
     */
    @TableField("phone_num")
    private String phoneNum;

    /**
     * 店铺id
     */
    @TableField("store_id")
    private Integer storeId;

    /**
     * 发型师名称
     */
    @TableField("worker_name")
    private String workerName;

    /**
     * 店铺名称
     */
    @TableField("store_name")
    private String storeName;

    /**
     * 服务项目名称
     */
    private String type;

    /**
     * 商品id
     */
    @TableField("goods_id")
    private Integer goodsId;

    /**
     * 抖音商品id
     */
    @TableField("goods_dy_id")
    private String goodsDyId;

    /**
     * 金额
     */
    @TableField("goods_total")
    private BigDecimal goodsTotal;

    /**
     * 总金额
     */
    private BigDecimal total;

    /**
     * 抖音内部订单id
     */
    @TableField("dy_order_id")
    private String dyOrderId;

    /**
     * 订单编号
     */
    @TableField("order_no")
    private String orderNo;

    /**
     * 创建时间
     */
    @TableField("add_time")
    private Date addTime;


    /**
     * 报错图片
     */
    @TableField("vefi_time")
    private Date vefiTime;

    /**
     * 支付方式 微信支付 微信支付-现金 抖音支付 支付宝支付
     */
    @TableField("pay_type")
    private String payType;

    /**
     * 支付时间
     */
    @TableField("pay_time")
    private Date payTime;

    /**
     * 支付总计
     */
    @TableField("pay_total")
    private BigDecimal payTotal;

    /**
     * 支付单号
     */
    @TableField("pay_id")
    private String payId;

    private Integer status;


    @TableField("refund_result")
    private Integer refundResult;
    /**
     * 退款抖音id
     */
    @TableField("refund_id")
    private String refundId;
    /**
     * 退款总计金额
     */
    @TableField("refund_total")
    private BigDecimal refundTotal;
    /**
     * 退款来源
     * 1-用户发起退款  3-过期自动退 4-客服退款 5-预约失败或预约取消自动退款
     */
    @TableField("refund_source")
    private int refundSource;

    /**
     * 退款原因
     */
    @TableField("refund_reason")
    private String refundReason;

    @TableField("member_id")
    private Integer memberId;

    /**
     * 当订单为剪发订单时, 代表用户使用的优惠券ID
当订单是其他订单时(如购买会员,卡金充值),代表会员权益/卡金套餐的ID
     */
    @TableField("coupon_id")
    private Integer couponId;

    /**
     * 优惠劵code码
     */
    @TableField("coupon_code")
    private String couponCode;

    /**
     * 优惠总金额
     */
    @TableField("coupon_total")
    private BigDecimal couponTotal;

    /**
     *抖音券码
     */
    @TableField("dy_code")
    private String dyCode;

    /**
     * 取消结果
     */
    @TableField("cancel_result")
    private String cancelResult;

    /**
     * 订单类型 
1.普通 
2.企业剪 
3.春季次卡
4.抖音核销 
5.膨胀券 
6.会员 
7.会员续费 
9.美团 
10.染发次卡 
11.权益订单 
12.哈啰订单 
13.次卡订单
14.卡金充值15.积分商城订单
     */
    @TableField("order_type")
    private Integer orderType;

    /**
     * 渠道
     */

    @TableField("channel")
    private String channel;

    /**
     * 服务项目名称
     */
    @TableField("update_time")
    private Date updateTime;

    /**
     * 顾客属性
0 生客(2-3)
1 熟客(4-5) 
2 深度熟客(5~)
3 首次消费(1)
     */
    @TableField("customer_type")
    private Integer customerType;

    /**
     * 取消原因
     */
    @TableField("cancel_reason")
    private String cancelReason;

    /**
     * 邀请发型师
     */
    @TableField("inviter_id")
    private Integer inviterId;

    /**
     * 加盟商ID
     */
    @TableField("franchisees_id")
    private Integer franchiseesId;

    /**
     * 是否是会员 -1非会员 0过期会员 1有效会员
     */
    @TableField("is_user_member")
    private Integer isUserMember;

    /**
     * 备注
     */
    private String remark;

    /**
     * 产品组ID
     */
    @TableField("product_group_id")
    private Integer productGroupId;

    /**
     * 提前结束原因
     */
    @TableField("early_reason")
    private String earlyReason;

    /**
     * 报错描述
     */
    @TableField("report_detail")
    private String reportDetail;

    /**
     * 报错图片
     */
    @TableField("report_img")
    private String reportImg;

}
